var arr  = [1, 5, 3]
var str = new String("hello")

// 生成一个迭代器对象
function makeIterator(arr) {
	var index = 0 ;
	return {
		next() {
			var ret = {done: !(index < arr.length), value: arr[index++]}
			console.log(ret)
			return  ret 
		}
	}
}

// 屏蔽 arr实例的 [Symbol.iterator] 方法
arr[Symbol.iterator] = function() {
	console.log(this)
	return makeIterator(this)
}

for(var a of arr) {
	console.log(a)
	
}

// console.log('-----------------------\n')

// for(var [k, v] of arr.values()) {
// 	console.log(k, v)
// }
